void main(List<String> args) {
  // 准备购物车数据
  List carts = [
    {"count": 2, "price": 10.0, "selected": true},
    {"count": 1, "price": 30.0, "selected": true},
    {"count": 5, "price": 20.0, "selected": true}
  ];

  // 调用计算全选状态的函数，传入购物车列表
  bool result = getSelectedState(carts);
  print(result ? '全部选中' : '非全选');
  //用every判断
  bool result2 = carts.every((item) => item['selected']);
  print(result2 ? '全部选中' : '非全选');
  bool result3 = getSelectedState2(carts);
  print(result3 ? '全部选中' : '非全选');
}

//封装一个函数计算全选状态
bool getSelectedState(List list) {
  //假设默认认为选中
  bool isAllSelect = true;
  // 遍历列表，只要有一个没被选中，就返回false
  for (var item in list) {
    if (item['selected'] == false) {
      //修改选中状态
      isAllSelect = false;
      // 退出循环, 后面不用比较了
      break;
    }
  }
  //返回选中选中状态
  return isAllSelect;
}

//封装一个函数计算全选状态
bool getSelectedState2(List list) {
  //假设默认认为选不中
  bool isAllSelect = false;
  // 遍历列表，只要有一个被选中，就返回true
  for (var item in list) {
    if (item['selected']) {
      //修改选中状态
      isAllSelect = true;
      // 退出循环, 后面不用比较了
      break;
    }
  }
  //返回选中选中状态
  return isAllSelect;
}
